1. Field of the Disclosure
The disclosure is directed to multimedia signal processing and, more particularly, to video encoding and decoding.
2. Description of the Related Art
Multimedia signal processing systems, such as video encoders, may encode multimedia data using encoding methods based on international standards such as MPEG-x and H.26x standards. Such encoding methods generally are directed towards compressing the multimedia data for transmission and/or storage. Compression is broadly the process of removing redundancy from the data.
A video signal may be described in terms of a sequence of pictures, which include frames (an entire picture), or fields (e.g., an interlaced video signal comprises fields of alternating odd or even lines of a picture). As used herein, the term “frame” refers to a picture, a frame or a field. Frames may be made up of various sized portions of video data including individual pixels, groups of pixels referred to generally as blocks, and groups of blocks generally referred to as slices. Video encoding methods compress video signals by using lossless or lossy compression algorithms to compress each frame. Intra-frame coding (herein referred to as intra-coding) refers to encoding a frame using that frame. Inter-frame coding (herein referred to as inter-coding) refers to encoding a frame based on other, “reference,” frames. For example, video signals often exhibit spatial redundancy in which portions of video frame samples near each other in the same frame have at least portions that match or at least approximately match each other. In addition, frames often exhibit temporal redundancy which can be removed using techniques such as motion compensated prediction.
A multimedia bitstream targeted to a single application, such as a video bitstream for example, can be encoded into two or more separate layers (e.g., using scalable coding) such as a base layer and one or more enhancement layers. These layers can then be used to provide scalability, e.g., temporal and/or SNR (signal to noise ratio) scalability. Scalable coding, is useful in dynamic channels, where scalable bitstreams can be adapted to match fluctuations in network bandwidth. In error-prone channels, scalable coding can add robustness through unequal error protection of the base layer and the enhancement layer.
Wireless channels are prone to errors, including bit errors and packet losses. Because video compression inherently removes redundancy, the compressed data becomes critical. Loss of any part of this data during transmission impacts reconstructed video quality at the decoder. The impact is aggravated if the lost data is part of the reference portions for motion compensated prediction and/or spatial prediction, causing temporal and/or spatial error propagation. In addition, scalable coding may also aggravate error propagation. For example, loss of a base layer may render correctly received enhancement layer data useless, if the enhancement layer data depends on the base layer. Also, synchronization may be lost at the decoder due to context dependent coding and predictive coding resulting in even larger portions of lost video that could be displayed if resynchronization were possible. If large portions of video are lost due to errors, error control, detection and recovery may be difficult or impossible for a decoder application. What is needed is a reliable error control system including, at least in part, error detection, resynchronization and/or error recovery that makes maximum use of the received information.